# 给定一个字符串 s ，请你找出其中不含有重复字符的 最长 子串 的长度。

#滑动窗口
def lengthOfLongestSubstring(s):
    sw = set()
    l = 0  # 左指针
    max_len = 0  # 最长子串的长度
    for r in range(len(s)):  # r 右指针
        while s[r] in sw:
            sw.remove(s[l])
            l += 1
        sw.add(s[r])
        max_len = max(max_len, r-l+1)
    print(max_len)

s1 = "abcabcdd"
s2 = "bbbbb"
s3 = "pwwkew"
lengthOfLongestSubstring(s1)
lengthOfLongestSubstring(s2)
lengthOfLongestSubstring(s3)